package com.tencreat.mapper.mall;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tencreat.domain.mall.MallCart;
import com.tencreat.domain.mall.vo.ResMallCartItem;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 购物车商品Mapper接口
 *
 * @author tencreat
 * @date 2021-08-13
 */
@Repository
public interface MallCartMapper extends BaseMapper<MallCart> {


    /**
     * 锁购物车数据
     * @param ids 购物车ID集合
     * @return 结果
     */
    List<MallCart> selectForUpdate(String ids);

    /**
     * 锁购物车数据
     * @param id 购物车ID
     * @return 结果
     */
    MallCart selectForUpdate2(Long id);

    /**
     * 锁购物车数据
     * @param goodsId 商品ID
     * @param uuid 用户uuid
     * @return 结果
     */
    MallCart selectForUpdate3(@Param("uuid") Long uuid, @Param("goodsId") Long goodsId,@Param("normsId") Long normsId);

    /**
     * 获取购物车的数据
     * @param uuid 用户ID
     * @return 结果
     */
    List<ResMallCartItem> apiList(Long uuid);

}
